package com.loan.system.service;

import com.loan.common.core.domain.PageQuery;
import com.loan.common.core.page.TableDataInfo;
import com.loan.system.domain.UserEntity;
import com.loan.system.domain.UserVaEntity;

import java.util.List;
import java.util.Map;

/**
 * @author shiguang on 2022/8/29 11:08
 */
public interface UserService {

    UserEntity selectUserById(Long id);

    /**
     * 获取用户数量
     *
     * @return
     */
    long getUserCount(String date);

    TableDataInfo<UserEntity> selectPageUserList(UserEntity entity, PageQuery pageQuery);

    void updateUserOperatorStatus();

    UserVaEntity getUserVaByApplyId(Long applyId);

    TableDataInfo<Map<String, Object>> selectPageRegisterDataList(String channel, String beginTime,
                                                                  String endTime, Integer pageNum,
                                                                  Integer pageSize);

    List<Map<String, Object>> selectTotalList(String channel, String beginTime, String endTime);

    /**
     * 删除用户
     * @param userId
     * @return
     */
    void deleteUserById(Long userId);
}
